﻿#region Código Gerado Pela Fábrica de Software (Using)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ServiceModel;
using itau.im.entidade;
using EnterpriseLibraryWrapper;
#endregion

#region Código Gerado Pela Fábrica de Software (Namespace)
namespace itau.im.negocio
{

    #region Código Gerado Pela Fábrica de Software (Interface)
    /// <summary>
    /// **************************************************************************************************<BR/>
    /// AUTOR           : Fábrica de Software                                                             <BR/>
    /// DATA DE CRIAÇÃO : 10/01/2011                                                                      <BR/>
    /// ALTERADO POR    :                                                                                 <BR/>
    /// DATA ALTERAÇÃO  :                                                                                 <BR/>
    /// OBJETIVO        : Interface "IConversorTaxas" utilizada para exibir o servico.                    <BR/>
    /// **************************************************************************************************<BR/>
    /// </summary>
    [ServiceContract]
    public interface IConversorTaxas
    {
        /// <summary>
        /// **************************************************************************************************<BR/>
        /// AUTOR           : Fábrica de Software                                                             <BR/>
        /// DATA DE CRIAÇÃO : 10/01/2011                                                                      <BR/>
        /// ALTERADO POR    :                                                                                 <BR/>
        /// DATA ALTERAÇÃO  :                                                                                 <BR/>
        /// OBJETIVO        : Método que será implementado para converter o pu exponencial.                   <BR/>
        /// **************************************************************************************************<BR/> 
        /// </summary> 
        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        IList<CurvaExecucaoPonto> ConvertePUsParaExponencial(IList<CurvaExecucaoPonto> listaPontos, int baseDias);

        /// <summary>
        /// **************************************************************************************************<BR/>
        /// AUTOR           : Fábrica de Software                                                             <BR/>
        /// DATA DE CRIAÇÃO : 11/01/2011                                                                      <BR/>
        /// ALTERADO POR    :                                                                                 <BR/>
        /// DATA ALTERAÇÃO  :                                                                                 <BR/>
        /// OBJETIVO        : Método que será implementado para converter o fator diario linear.              <BR/>
        /// **************************************************************************************************<BR/> 
        /// </summary> 
        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        IList<CurvaExecucaoPonto> ConverteFatoresDiariosParaLinear(IList<CurvaExecucaoPonto> listaPontos, int baseDias);

        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        IList<CurvaExecucaoPonto> ConverteFatoresDiariosExponenciais(IList<CurvaExecucaoPonto> listaPontos, int baseDias);

        /// <summary>
        /// **************************************************************************************************<BR/>
        /// AUTOR           : Fábrica de Software                                                             <BR/>
        /// DATA DE CRIAÇÃO : 10/01/2011                                                                      <BR/>
        /// ALTERADO POR    :                                                                                 <BR/>
        /// DATA ALTERAÇÃO  :                                                                                 <BR/>
        /// OBJETIVO        : Método que será implementado para converter o fator diario exponencial.         <BR/>
        /// **************************************************************************************************<BR/> 
        /// </summary> 
        //[OperationContract]
        //[FaultContract(typeof(WCFFaultContract))]
        //IList<CurvaExecucaoPonto> ConverteFatorDiarioExponencial(IList<CurvaExecucaoPonto> listaPontos, int baseDias);


        /// <summary>
        /// **************************************************************************************************<BR/>
        /// AUTOR           : Fábrica de Software                                                             <BR/>
        /// DATA DE CRIAÇÃO : 10/01/2011                                                                      <BR/>
        /// ALTERADO POR    :                                                                                 <BR/>
        /// DATA ALTERAÇÃO  :                                                                                 <BR/>
        /// OBJETIVO        : Método que será implementado para converter o pu linear.                        <BR/>
        /// **************************************************************************************************<BR/> 
        /// </summary> 
        //[OperationContract]
        //[FaultContract(typeof(WCFFaultContract))]
        //IList<CurvaExecucaoPonto> ConvertePuLinear(IList<CurvaExecucaoPonto> listaPontos, int baseDias);

        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        IList<CurvaExecucaoPonto> ConverterPUsParaFatorDiario(IList<CurvaExecucaoPonto> listaVertices);

        /// <summary>
        /// **************************************************************************************************<BR/>
        /// AUTOR           : Fábrica de Software                                                             <BR/>
        /// DATA DE CRIAÇÃO : 20/12/2010                                                                      <BR/>
        /// ALTERADO POR    :                                                                                 <BR/>
        /// DATA ALTERAÇÃO  :                                                                                 <BR/>
        /// OBJETIVO        : Método que será implementado Converte Fator Diário para PU.                              <BR/>
        /// **************************************************************************************************<BR/> 
        /// </summary>
        /// <returns></returns>
        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        IList<CurvaExecucaoPonto> ConverteFatoresDiariosParaPU(IList<CurvaExecucaoPonto> listaVertices);

        /// <summary>
        /// **************************************************************************************************<BR/>
        /// AUTOR           : Fábrica de Software                                                             <BR/>
        /// DATA DE CRIAÇÃO : 20/12/2010                                                                      <BR/>
        /// ALTERADO POR    :                                                                                 <BR/>
        /// DATA ALTERAÇÃO  :                                                                                 <BR/>
        /// OBJETIVO        : Método que será implementado Converte Exponencial para Fator Diário.             <BR/>
        /// **************************************************************************************************<BR/> 
        /// </summary>
        /// <returns></returns>
        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        IList<CurvaExecucaoPonto> ConverterTaxasExponenciaisParaFatorDiario(IList<CurvaExecucaoPonto> listaVertices, int baseDias);

        /// <summary>
        /// ************************************************************************************************<BR/>
        /// AUTOR           : Fábrica de Software                                                           <BR/>
        /// DATA DE CRIAÇÃO : 20/12/2010                                                                    <BR/>
        /// ALTERADO POR    :                                                                               <BR/>
        /// DATA ALTERAÇÃO  :                                                                               <BR/>
        /// OBJETIVO        : Método que será implementado Converte Linear Fator Diário.                    <BR/>
        /// ************************************************************************************************<BR/> 
        /// </summary>
        /// <returns></returns>
        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        IList<CurvaExecucaoPonto> ConverterTaxasLinearesParaFatorDiario(IList<CurvaExecucaoPonto> listaVertices, int baseDias);

        /// <summary>
        /// ************************************************************************************************<BR/>
        /// AUTOR           : Fábrica de Software                                                           <BR/>
        /// DATA DE CRIAÇÃO : 20/12/2010                                                                    <BR/>
        /// ALTERADO POR    :                                                                               <BR/>
        /// DATA ALTERAÇÃO  :                                                                               <BR/>
        /// OBJETIVO        : Método que será implementado Converte Exponencial para PU.                    <BR/>
        /// ************************************************************************************************<BR/> 
        /// </summary>
        /// <returns></returns>
        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        IList<CurvaExecucaoPonto> ConverterTaxasExponenciaisParaPU(IList<CurvaExecucaoPonto> listaVertices, int baseDias);

        /// <summary>
        /// ************************************************************************************************<BR/>
        /// AUTOR           : Fábrica de Software                                                           <BR/>
        /// DATA DE CRIAÇÃO : 20/12/2010                                                                    <BR/>
        /// ALTERADO POR    :                                                                               <BR/>
        /// DATA ALTERAÇÃO  :                                                                               <BR/>
        /// OBJETIVO        : Método que será implementado Converte Linear para PU.                    <BR/>
        /// ************************************************************************************************<BR/> 
        /// </summary>
        /// <returns></returns>
        [OperationContract]
        [FaultContract(typeof(WCFFaultContract))]
        IList<CurvaExecucaoPonto> ConverterTaxasLinearesParaPU(IList<CurvaExecucaoPonto> lsitaVertices, int baseDias);
    }

    #endregion
}
#endregion